A Pattern Language for the Evolution of Component-based Software Architectures
نویسندگان
چکیده
Architecture-centric software evolution enables change in a system’s structure and behaviour while maintaining a global view of the software to address evolution-centric tradeoffs. The existing solutions for architectural maintenance and evolution fall short of exploiting generic and reusable expertise to address recurring evolution problems. We present a pattern language as a collection of interconnected change patterns that enable reuse-driven and consistent evolution of component-based software architectures. Pattern interconnections represent possible relationships among patterns (such as variants or related patterns) in the language. In general, we introduce architecture change mining (pattern language development) as a complementary and integrated phase to facilitate reuse-driven architecture change execution (pattern language application). We evaluate the language applicability to support pattern-driven reuse in architecture evolution of a payment system case study. We also analyse the precision and recall factor as a measure of selecting the most appropriate pattern(s) from the language collection. The pattern language itself continuously evolves with an incremental discovery of new patterns from change logs over time.
منابع مشابه
A Pattern Language for Evolution in Component-Based Software Architectures
– Modern software systems are prone to a continuous evolution under frequently varying requirements. Architecturecentric software evolution enables change in system structure and behavior while maintaining a global view of software to address evolution-centric tradeoffs. The Lehman’s law of continuing change demands for long-living and continuously evolving architectures to prolong the producti...
متن کاملLanguage support for dynamic and evolving software architectures
Language Support for Piecemeal Software Architecture Evolution In the current practice of software engineering there is relative little guidance on how to develop “good” software architectures. Current real-world software architectures often suffer from limited reuse, flexibility, understandability, maintainability, predictability, and several other problems. We can observe that many of these p...
متن کاملServer-Side Components - A Pattern Language
Enterprise-level component-based development is an important topic in today's software industry. Several technologies for components on the server exist, among them EJB, CCM and COM+. Although these technologies have significant differences, they are all built on the same core concepts. This paper captures these concepts in the form of a pattern language in Alexandrian style. The patterns are u...
متن کاملEvolution Structurelle dans les Architectures Logicielles à base de Composants. (Structural Evolution in Component-based Software Evolution)
The work presented in this thesis concerns with the study of component-based software architecture. A softwarearchitecture provides a description of a software system at a high level of abstraction in term of components andinteractions among these components. The studied problem related to the structural evolution in component-based software architecture. The evolution is a signific...
متن کاملComponent Architectures for Evolvable XML Applications
processing applications. It rst contrasts XML with more traditional approaches to language processing. Second, the main processing paradigms for XML are brie y discussed, with a number of example applications. Several forces that in uence how XML is processed or generated are identi ed and discussed. Then a design pattern is presented that resolves these forces in a particular way. The main obj...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- ECEASST
دوره 59 شماره
صفحات -
تاریخ انتشار 2013